* Team upload.
* Package ring 0.16.20 from crates.io using debcargo 2.5.0
* Upgrade spin dependency to 0.9
[dgit import unpatched rust-ring 0.16.20-2]
--- /dev/null
--- /dev/null
++{"package":"Could not get crate checksum","files":{}}
--- /dev/null
--- /dev/null
++rust-ring (0.16.20-2) unstable; urgency=medium
++
++ * Team upload.
++ * Package ring 0.16.20 from crates.io using debcargo 2.5.0
++ * Upgrade spin dependency to 0.9
++
++ -- Alexander Kjäll <alexander.kjall@gmail.com> Mon, 24 Oct 2022 20:11:21 -0400
++
++rust-ring (0.16.20-1) unstable; urgency=medium
++
++ * Team upload.
++ * Package ring 0.16.20 from crates.io using debcargo 2.5.0 (Closes: #1010212)
++ * Drop relax-deps.patch, no longer needed
++ * Drop use-array-iter.patch, included in new upstream
++ * Remove dev-dependency on wasm-bindgen-test, it's only used when testing
++ with the wasm-bindgen target which we don't do in Debian.
++ * Disable a test which depends on test data that is not in Debian.
++ * Fix running tests with no-default-features.
++ * Use collapse_features = true
++
++ -- Peter Michael Green <plugwash@debian.org> Thu, 28 Apr 2022 21:08:04 +0000
++
++rust-ring (0.16.9-4) unstable; urgency=medium
++
++ * Package ring 0.16.9 from crates.io using debcargo 2.4.2
++ * use-array-iter.patch: Fix usage of array::into_iter
++ Thanks to Logan Rosen (Closes: #961387)
++
++ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 23 May 2020 23:38:56 +0200
++
++rust-ring (0.16.9-3) unstable; urgency=medium
++
++ * Team upload.
++ * Package ring 0.16.9 from crates.io using debcargo 2.4.2
++
++ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 20 Apr 2020 14:16:05 +0200
++
++rust-ring (0.16.9-2) unstable; urgency=medium
++
++ * Team upload.
++ * Package ring 0.16.9 from crates.io using debcargo 2.2.10
++ * librust-ring+lazy-static-dev is NEW.
++
++ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 29 Oct 2019 09:07:09 +0100
++
++rust-ring (0.16.9-1) unstable; urgency=medium
++
++ * Package ring 0.16.9 from crates.io using debcargo 2.4.0 (Closes: #935673)
++
++ -- kpcyrd <git@rxv.cc> Tue, 22 Oct 2019 18:02:25 +0200
++
++rust-ring (0.14.6-1) unstable; urgency=medium
++
++ * Package ring 0.14.6 from crates.io using debcargo 2.2.10
++
++ -- kpcyrd <git@rxv.cc> Thu, 20 Jun 2019 17:05:16 -0700
--- /dev/null
--- /dev/null
++12
--- /dev/null
--- /dev/null
++Source: rust-ring
++Section: rust
++Priority: optional
++Build-Depends: debhelper (>= 12),
++ dh-cargo (>= 25),
++ cargo:native <!nocheck>,
++ rustc:native <!nocheck>,
++ libstd-rust-dev <!nocheck>,
++ librust-cc-1-dev (>= 1.0.62-~~) <!nocheck>,
++ librust-libc-0.2-dev (>= 0.2.69-~~) <!nocheck>,
++ librust-once-cell-1+std-dev (>= 1.5.2-~~) <!nocheck>,
++ librust-spin-0.9+once-dev <!nocheck>,
++ librust-untrusted-0.7+default-dev (>= 0.7.1-~~) <!nocheck>,
++ librust-web-sys-0.3+crypto-dev (>= 0.3.37-~~) <!nocheck>,
++ librust-web-sys-0.3+window-dev (>= 0.3.37-~~) <!nocheck>,
++ librust-winapi-0.3+ntsecapi-dev (>= 0.3.8-~~) <!nocheck>,
++ librust-winapi-0.3+wtypesbase-dev (>= 0.3.8-~~) <!nocheck>
++Maintainer: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
++Uploaders:
++ kpcyrd <git@rxv.cc>
++Standards-Version: 4.5.1
++Vcs-Git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/ring]
++Vcs-Browser: https://salsa.debian.org/rust-team/debcargo-conf/tree/master/src/ring
++Rules-Requires-Root: no
++
++Package: librust-ring-dev
++Architecture: any
++Multi-Arch: same
++Depends:
++ ${misc:Depends},
++ librust-cc-1-dev (>= 1.0.62-~~),
++ librust-libc-0.2-dev (>= 0.2.69-~~),
++ librust-once-cell-1+std-dev (>= 1.5.2-~~),
++ librust-spin-0.9+once-dev,
++ librust-untrusted-0.7+default-dev (>= 0.7.1-~~),
++ librust-web-sys-0.3+crypto-dev (>= 0.3.37-~~),
++ librust-web-sys-0.3+window-dev (>= 0.3.37-~~),
++ librust-winapi-0.3+ntsecapi-dev (>= 0.3.8-~~),
++ librust-winapi-0.3+wtypesbase-dev (>= 0.3.8-~~)
++Provides:
++ librust-ring+alloc-dev (= ${binary:Version}),
++ librust-ring+default-dev (= ${binary:Version}),
++ librust-ring+dev-urandom-fallback-dev (= ${binary:Version}),
++ librust-ring+internal-benches-dev (= ${binary:Version}),
++ librust-ring+once-cell-dev (= ${binary:Version}),
++ librust-ring+slow-tests-dev (= ${binary:Version}),
++ librust-ring+std-dev (= ${binary:Version}),
++ librust-ring+test-logging-dev (= ${binary:Version}),
++ librust-ring+wasm32-c-dev (= ${binary:Version}),
++ librust-ring-0-dev (= ${binary:Version}),
++ librust-ring-0+alloc-dev (= ${binary:Version}),
++ librust-ring-0+default-dev (= ${binary:Version}),
++ librust-ring-0+dev-urandom-fallback-dev (= ${binary:Version}),
++ librust-ring-0+internal-benches-dev (= ${binary:Version}),
++ librust-ring-0+once-cell-dev (= ${binary:Version}),
++ librust-ring-0+slow-tests-dev (= ${binary:Version}),
++ librust-ring-0+std-dev (= ${binary:Version}),
++ librust-ring-0+test-logging-dev (= ${binary:Version}),
++ librust-ring-0+wasm32-c-dev (= ${binary:Version}),
++ librust-ring-0.16-dev (= ${binary:Version}),
++ librust-ring-0.16+alloc-dev (= ${binary:Version}),
++ librust-ring-0.16+default-dev (= ${binary:Version}),
++ librust-ring-0.16+dev-urandom-fallback-dev (= ${binary:Version}),
++ librust-ring-0.16+internal-benches-dev (= ${binary:Version}),
++ librust-ring-0.16+once-cell-dev (= ${binary:Version}),
++ librust-ring-0.16+slow-tests-dev (= ${binary:Version}),
++ librust-ring-0.16+std-dev (= ${binary:Version}),
++ librust-ring-0.16+test-logging-dev (= ${binary:Version}),
++ librust-ring-0.16+wasm32-c-dev (= ${binary:Version}),
++ librust-ring-0.16.20-dev (= ${binary:Version}),
++ librust-ring-0.16.20+alloc-dev (= ${binary:Version}),
++ librust-ring-0.16.20+default-dev (= ${binary:Version}),
++ librust-ring-0.16.20+dev-urandom-fallback-dev (= ${binary:Version}),
++ librust-ring-0.16.20+internal-benches-dev (= ${binary:Version}),
++ librust-ring-0.16.20+once-cell-dev (= ${binary:Version}),
++ librust-ring-0.16.20+slow-tests-dev (= ${binary:Version}),
++ librust-ring-0.16.20+std-dev (= ${binary:Version}),
++ librust-ring-0.16.20+test-logging-dev (= ${binary:Version}),
++ librust-ring-0.16.20+wasm32-c-dev (= ${binary:Version})
++Description: Safe, fast, small crypto using Rust - Rust source code
++ This package contains the source for the Rust ring crate, packaged by debcargo
++ for use with cargo and dh-cargo.
--- /dev/null
--- /dev/null
++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
++Upstream-Name: ring
++Upstream-Contact: Brian Smith <brian@briansmith.org>
++Source: https://github.com/briansmith/ring
++
++Files: *
++Copyright:
++ 2015-2021 Brian Smith <brian@briansmith.org>
++ 1998-2018 The OpenSSL Project
++ 1995-1998 Eric Young <eay@cryptsoft.com>
++ 2014-2020 Google Inc.
++ 2017 Shay Gueron
++ 2002 Sun Microsystems, Inc.
++ 2014-2015 Intel Corporation
++ 2015 CloudFlare, Inc.
++ 2018 Trent Clarke
++ 2016 Simon Sapin
++ 2016 David Judd
++ 2016 Dirkjan Ochtman
++ 2015-2016 the fiat-crypto authors
++License: OpenSSL License
++
++Files: debian/*
++Copyright:
++ 2019-2022 Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
++ 2019 kpcyrd <git@rxv.cc>
++License: OpenSSL License
++
++License: OpenSSL License
++ Note that it is easy for this file to get out of sync with the licenses in the
++ source code files. It's recommended to compare the licenses in the source code
++ with what's mentioned here.
++ .
++ *ring* is derived from BoringSSL, so the licensing situation in *ring* is
++ similar to BoringSSL.
++ .
++ *ring* uses an ISC-style license like BoringSSL for code in new files,
++ including in particular all the Rust code:
++ .
++ Copyright 2015-2016 Brian Smith.
++ .
++ Permission to use, copy, modify, and/or distribute this software for any
++ purpose with or without fee is hereby granted, provided that the above
++ copyright notice and this permission notice appear in all copies.
++ .
++ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHORS DISCLAIM ALL WARRANTIES
++ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
++ SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
++ OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++ .
++ BoringSSL is a fork of OpenSSL. As such, large parts of it fall under OpenSSL
++ licensing. Files that are completely new have a Google copyright and an ISC
++ license. This license is reproduced at the bottom of this file.
++ .
++ Contributors to BoringSSL are required to follow the CLA rules for Chromium:
++ https://cla.developers.google.com/clas
++ .
++ Files in third_party/ have their own licenses, as described therein. The MIT
++ license, for third_party/fiat, which, unlike other third_party directories, is
++ compiled into non-test libraries, is included below.
++ .
++ The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the
++ OpenSSL License and the original SSLeay license apply to the toolkit. See below
++ for the actual license texts. Actually both licenses are BSD-style Open Source
++ licenses. In case of any license issues related to OpenSSL please contact
++ openssl-core@openssl.org.
++ .
++ The following are Google-internal bug numbers where explicit permission from
++ some authors is recorded for use of their work:
++ 27287199
++ 27287880
++ 27287883
++ .
++ OpenSSL License
++ ---------------
++ .
++ /* ====================================================================
++ * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ *
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the
++ * distribution.
++ *
++ * 3. All advertising materials mentioning features or use of this
++ * software must display the following acknowledgment:
++ * "This product includes software developed by the OpenSSL Project
++ * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
++ *
++ * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
++ * endorse or promote products derived from this software without
++ * prior written permission. For written permission, please contact
++ * openssl-core@openssl.org.
++ *
++ * 5. Products derived from this software may not be called "OpenSSL"
++ * nor may "OpenSSL" appear in their names without prior written
++ * permission of the OpenSSL Project.
++ *
++ * 6. Redistributions of any form whatsoever must retain the following
++ * acknowledgment:
++ * "This product includes software developed by the OpenSSL Project
++ * for use in the OpenSSL Toolkit (http://www.openssl.org/)"
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
++ * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
++ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
++ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
++ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
++ * OF THE POSSIBILITY OF SUCH DAMAGE.
++ * ====================================================================
++ *
++ * This product includes cryptographic software written by Eric Young
++ * (eay@cryptsoft.com). This product includes software written by Tim
++ * Hudson (tjh@cryptsoft.com).
++ *
++ */
++ .
++ Original SSLeay License
++ -----------------------
++ .
++ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
++ * All rights reserved.
++ *
++ * This package is an SSL implementation written
++ * by Eric Young (eay@cryptsoft.com).
++ * The implementation was written so as to conform with Netscapes SSL.
++ *
++ * This library is free for commercial and non-commercial use as long as
++ * the following conditions are aheared to. The following conditions
++ * apply to all code found in this distribution, be it the RC4, RSA,
++ * lhash, DES, etc., code; not just the SSL code. The SSL documentation
++ * included with this distribution is covered by the same copyright terms
++ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
++ *
++ * Copyright remains Eric Young's, and as such any Copyright notices in
++ * the code are not to be removed.
++ * If this package is used in a product, Eric Young should be given attribution
++ * as the author of the parts of the library used.
++ * This can be in the form of a textual message at program startup or
++ * in documentation (online or textual) provided with the package.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the copyright
++ * notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in the
++ * documentation and/or other materials provided with the distribution.
++ * 3. All advertising materials mentioning features or use of this software
++ * must display the following acknowledgement:
++ * "This product includes cryptographic software written by
++ * Eric Young (eay@cryptsoft.com)"
++ * The word 'cryptographic' can be left out if the rouines from the library
++ * being used are not cryptographic related :-).
++ * 4. If you include any Windows specific code (or a derivative thereof) from
++ * the apps directory (application code) you must include an acknowledgement:
++ * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
++ *
++ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ *
++ * The licence and distribution terms for any publically available version or
++ * derivative of this code cannot be changed. i.e. this code cannot simply be
++ * copied and put under another distribution licence
++ * [including the GNU Public Licence.]
++ */
++ .
++ .
++ ISC license used for completely new code in BoringSSL:
++ .
++ /* Copyright (c) 2015, Google Inc.
++ *
++ * Permission to use, copy, modify, and/or distribute this software for any
++ * purpose with or without fee is hereby granted, provided that the above
++ * copyright notice and this permission notice appear in all copies.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
++ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
++ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
++ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
++ .
++ .
++ The code in third_party/fiat carries the MIT license:
++ .
++ Copyright (c) 2015-2016 the fiat-crypto authors (see
++ https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS).
++ .
++ Permission is hereby granted, free of charge, to any person obtaining a copy
++ of this software and associated documentation files (the "Software"), to deal
++ in the Software without restriction, including without limitation the rights
++ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
++ copies of the Software, and to permit persons to whom the Software is
++ furnished to do so, subject to the following conditions:
++ .
++ The above copyright notice and this permission notice shall be included in all
++ copies or substantial portions of the Software.
++ .
++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
++ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
++ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
++ SOFTWARE.
--- /dev/null
--- /dev/null
++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
++Upstream-Name: ring
++Upstream-Contact: Brian Smith <brian@briansmith.org>
++Source: https://github.com/briansmith/ring
++
++Files: *
++Copyright: FIXME (overlay) UNKNOWN-YEARS Brian Smith <brian@briansmith.org>
++License:
++Comment:
++ FIXME (overlay): Since upstream copyright years are not available in
++ Cargo.toml, they were extracted from the upstream Git repository. This may not
++ be correct information so you should review and fix this before uploading to
++ the archive.
++
++Files: ./LICENSE
++Copyright:
++ 2015-2016 Brian Smith.
++ 1998-2011 The OpenSSL Project. All rights reserved.
++ 1995-1998 Eric Young (eay@cryptsoft.com)
++ 2015, Google Inc.
++ 2015-2016 the fiat-crypto authors (see
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./build.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/chacha/asm/chacha-armv4.pl
++Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/chacha/asm/chacha-armv8.pl
++Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/chacha/asm/chacha-x86.pl
++Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/chacha/asm/chacha-x86_64.pl
++Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl
++Copyright: 2015, CloudFlare Ltd.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/constant_time_test.c
++Copyright: 2014 The OpenSSL Project. All rights reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/cpu-intel.c
++Copyright: 1995-1998 Eric Young (eay@cryptsoft.com)
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/crypto.c
++Copyright: 2014, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/curve25519/asm/x25519-asm-arm.S
++Copyright: 2015, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/curve25519/curve25519.c
++Copyright: 2020, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/curve25519/curve25519_tables.h
++Copyright: 2020, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/curve25519/internal.h
++Copyright: 2020, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/aes/aes_nohw.c
++Copyright: 2019, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/aes/asm/aesni-x86.pl
++Copyright: 2009-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/aes/asm/aesni-x86_64.pl
++Copyright: 2009-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/aes/asm/aesv8-armx.pl
++Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/aes/asm/bsaes-armv7.pl
++Copyright: 2012-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/aes/asm/vpaes-x86.pl
++Copyright: 2011-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/aes/asm/vpaes-x86_64.pl
++Copyright: 2011-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/asm/armv4-mont.pl
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/asm/armv8-mont.pl
++Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/asm/x86-mont.pl
++Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/asm/x86_64-mont.pl
++Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/asm/x86_64-mont5.pl
++Copyright: 2011-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/internal.h
++Copyright:
++ 1995-1997 Eric Young (eay@cryptsoft.com)
++ 1998-2006 The OpenSSL Project. All rights reserved.
++ 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/montgomery.c
++Copyright:
++ 1995-1998 Eric Young (eay@cryptsoft.com)
++ 1998-2006 The OpenSSL Project. All rights reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/bn/montgomery_inv.c
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/asm/ecp_nistz256-armv4.pl
++Copyright: 2015-2018 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/asm/ecp_nistz256-armv8.pl
++Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/asm/ecp_nistz256-x86.pl
++Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/asm/p256-x86_64-asm.pl
++Copyright:
++ 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++ 2014, Intel Corporation. All Rights Reserved.
++ 2015 CloudFlare, Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/ecp_nistz.c
++Copyright: 2014, Intel Corporation.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/ecp_nistz.h
++Copyright: 2015, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/ecp_nistz256.c
++Copyright: 2014, Intel Corporation.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/ecp_nistz256.h
++Copyright: 2014, Intel Corporation.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/ecp_nistz256_table.inl
++Copyright: 2015, Intel Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/ecp_nistz384.h
++Copyright: 2014, Intel Corporation.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/ecp_nistz384.inl
++Copyright: 2014, Intel Corporation.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/gfp_p256.c
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/ec/gfp_p384.c
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/modes/asm/aesni-gcm-x86_64.pl
++Copyright: 2013-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/modes/asm/ghash-armv4.pl
++Copyright: 2010-2018 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/modes/asm/ghash-x86.pl
++Copyright: 2010-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/modes/asm/ghash-x86_64.pl
++Copyright: 2010-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/modes/asm/ghashv8-armx.pl
++Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/sha/asm/sha256-armv4.pl
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/sha/asm/sha512-armv4.pl
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/sha/asm/sha512-armv8.pl
++Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/fipsmodule/sha/asm/sha512-x86_64.pl
++Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/internal.h
++Copyright:
++ 1995-1998 Eric Young (eay@cryptsoft.com)
++ 1998-2001 The OpenSSL Project. All rights reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/limbs/limbs.c
++Copyright: 2016-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/limbs/limbs.h
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/limbs/limbs.inl
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/mem.c
++Copyright: 1995-1998 Eric Young (eay@cryptsoft.com)
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/perlasm/arm-xlate.pl
++Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/perlasm/x86_64-xlate.pl
++Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/perlasm/x86asm.pl
++Copyright: 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/perlasm/x86gas.pl
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/perlasm/x86nasm.pl
++Copyright: 1999-2018 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/poly1305/internal.h
++Copyright: 2016, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/poly1305/poly1305.c
++Copyright: 2014, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/poly1305/poly1305_arm.c
++Copyright: 2014, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./crypto/poly1305/poly1305_vec.c
++Copyright: 2014, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/aes.h
++Copyright: 2002-2006 The OpenSSL Project. All rights reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/arm_arch.h
++Copyright: 1998-2011 The OpenSSL Project. All rights reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/base.h
++Copyright: 1998-2001 The OpenSSL Project. All rights reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/check.h
++Copyright: 2020 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/cpu.h
++Copyright: 1995-1998 Eric Young (eay@cryptsoft.com)
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/mem.h
++Copyright: 1995-1998 Eric Young (eay@cryptsoft.com)
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/poly1305.h
++Copyright: 2014, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./include/GFp/type_check.h
++Copyright: 1995-1998 Eric Young (eay@cryptsoft.com)
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/bsaes-armv7-ios32.S
++Copyright: 2012-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/bsaes-armv7-linux32.S
++Copyright: 2012-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha256-armv4-ios32.S
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha256-armv4-linux32.S
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha256-armv8-ios64.S
++Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha256-armv8-linux64.S
++Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha512-armv4-ios32.S
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha512-armv4-linux32.S
++Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha512-armv8-ios64.S
++Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./pregenerated/sha512-armv8-linux64.S
++Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/aes.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/aes_gcm.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/block.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/chacha.rs
++Copyright:
++ 2016 Brian Smith.
++ 2016, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/chacha20_poly1305.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/chacha20_poly1305_openssh.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/counter.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/gcm.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/gcm/gcm_nohw.rs
++Copyright:
++ 2019, Google Inc.
++ 2020 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/iv.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/nonce.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/poly1305.rs
++Copyright:
++ 2015-2016 Brian Smith.
++ 2014, 2015, Google Inc.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/quic.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/aead/shift.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/agreement.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/arithmetic.rs
++Copyright: 2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/arithmetic/bigint.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/arithmetic/montgomery.rs
++Copyright: 2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/bits.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/bssl.rs
++Copyright: 2015 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/c.rs
++Copyright: 2016-2019 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/constant_time.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/cpu.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/debug.rs
++Copyright: 2018 Trent Clarke.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/digest.rs
++Copyright: 2015-2019 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/digest/sha1.rs
++Copyright:
++ 2015-2016 Brian Smith.
++ 2016 Simon Sapin.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/digest/sha2.rs
++Copyright: 2019 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/curve25519.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/curve25519/ed25519.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/curve25519/ed25519/signing.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/curve25519/ed25519/verification.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/curve25519/ops.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/curve25519/scalar.rs
++Copyright: 2015-2019 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/curve25519/x25519.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/curve.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ecdh.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ecdsa/digest_scalar.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ecdsa/signing.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ecdsa/verification.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ops.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ops/elem.rs
++Copyright: 2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ops/p256.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/ops/p384.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/private_key.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/ec/suite_b/public_key.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/error.rs
++Copyright: 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/hkdf.rs
++Copyright: 2015 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/hmac.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/io.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/io/der.rs
++Copyright: 2015 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/io/der_writer.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/io/positive.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/io/writer.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/lib.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/limb.rs
++Copyright:
++ 2016 David Judd.
++ 2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/pbkdf2.rs
++Copyright: 2015 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/pkcs8.rs
++Copyright: 2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/polyfill.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/rand.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/rsa.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/rsa/convert_nist_rsa_test_vectors.py
++Copyright: 2016 Dirkjan Ochtman.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/rsa/padding.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/rsa/signing.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/rsa/verification.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/signature.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./src/test.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/aead_tests.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/agreement_tests.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/constant_time_tests.rs
++Copyright: 2020 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/digest_tests.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/ecdsa_tests.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/ed25519_tests.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/hkdf_tests.rs
++Copyright: 2015 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/hmac_tests.rs
++Copyright: 2015-2016 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/pbkdf2_tests.rs
++Copyright: 2015-2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/quic_tests.rs
++Copyright: 2018 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/rand_tests.rs
++Copyright: 2015-2019 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./tests/rsa_tests.rs
++Copyright: 2017 Brian Smith.
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: ./third_party/fiat/LICENSE
++Copyright: 2015-2016 the fiat-crypto authors (see
++License: UNKNOWN-LICENSE; FIXME (overlay)
++Comment:
++ FIXME (overlay): These notices are extracted from files. Please review them
++ before uploading to the archive.
++
++Files: debian/*
++Copyright:
++ 2019-2022 Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
++ 2019-2022 kpcyrd <git@rxv.cc>
++License:
++
++License: UNKNOWN-LICENSE; FIXME (overlay)
++ Note that it is easy for this file to get out of sync with the licenses in the
++ source code files. It's recommended to compare the licenses in the source code
++ with what's mentioned here.
++ .
++ *ring* is derived from BoringSSL, so the licensing situation in *ring* is
++ similar to BoringSSL.
++ .
++ *ring* uses an ISC-style license like BoringSSL for code in new files,
++ including in particular all the Rust code:
++ .
++ Copyright 2015-2016 Brian Smith.
++ .
++ Permission to use, copy, modify, and/or distribute this software for any
++ purpose with or without fee is hereby granted, provided that the above
++ copyright notice and this permission notice appear in all copies.
++ .
++ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHORS DISCLAIM ALL WARRANTIES
++ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
++ SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
++ OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++ .
++ BoringSSL is a fork of OpenSSL. As such, large parts of it fall under OpenSSL
++ licensing. Files that are completely new have a Google copyright and an ISC
++ license. This license is reproduced at the bottom of this file.
++ .
++ Contributors to BoringSSL are required to follow the CLA rules for Chromium:
++ https://cla.developers.google.com/clas
++ .
++ Files in third_party/ have their own licenses, as described therein. The MIT
++ license, for third_party/fiat, which, unlike other third_party directories, is
++ compiled into non-test libraries, is included below.
++ .
++ The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the
++ OpenSSL License and the original SSLeay license apply to the toolkit. See below
++ for the actual license texts. Actually both licenses are BSD-style Open Source
++ licenses. In case of any license issues related to OpenSSL please contact
++ openssl-core@openssl.org.
++ .
++ The following are Google-internal bug numbers where explicit permission from
++ some authors is recorded for use of their work:
++ 27287199
++ 27287880
++ 27287883
++ .
++ OpenSSL License
++ ---------------
++ .
++ /* ====================================================================
++ * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ *
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the
++ * distribution.
++ *
++ * 3. All advertising materials mentioning features or use of this
++ * software must display the following acknowledgment:
++ * "This product includes software developed by the OpenSSL Project
++ * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
++ *
++ * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
++ * endorse or promote products derived from this software without
++ * prior written permission. For written permission, please contact
++ * openssl-core@openssl.org.
++ *
++ * 5. Products derived from this software may not be called "OpenSSL"
++ * nor may "OpenSSL" appear in their names without prior written
++ * permission of the OpenSSL Project.
++ *
++ * 6. Redistributions of any form whatsoever must retain the following
++ * acknowledgment:
++ * "This product includes software developed by the OpenSSL Project
++ * for use in the OpenSSL Toolkit (http://www.openssl.org/)"
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
++ * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
++ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
++ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
++ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
++ * OF THE POSSIBILITY OF SUCH DAMAGE.
++ * ====================================================================
++ *
++ * This product includes cryptographic software written by Eric Young
++ * (eay@cryptsoft.com). This product includes software written by Tim
++ * Hudson (tjh@cryptsoft.com).
++ *
++ */
++ .
++ Original SSLeay License
++ -----------------------
++ .
++ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
++ * All rights reserved.
++ *
++ * This package is an SSL implementation written
++ * by Eric Young (eay@cryptsoft.com).
++ * The implementation was written so as to conform with Netscapes SSL.
++ *
++ * This library is free for commercial and non-commercial use as long as
++ * the following conditions are aheared to. The following conditions
++ * apply to all code found in this distribution, be it the RC4, RSA,
++ * lhash, DES, etc., code; not just the SSL code. The SSL documentation
++ * included with this distribution is covered by the same copyright terms
++ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
++ *
++ * Copyright remains Eric Young's, and as such any Copyright notices in
++ * the code are not to be removed.
++ * If this package is used in a product, Eric Young should be given attribution
++ * as the author of the parts of the library used.
++ * This can be in the form of a textual message at program startup or
++ * in documentation (online or textual) provided with the package.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the copyright
++ * notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in the
++ * documentation and/or other materials provided with the distribution.
++ * 3. All advertising materials mentioning features or use of this software
++ * must display the following acknowledgement:
++ * "This product includes cryptographic software written by
++ * Eric Young (eay@cryptsoft.com)"
++ * The word 'cryptographic' can be left out if the rouines from the library
++ * being used are not cryptographic related :-).
++ * 4. If you include any Windows specific code (or a derivative thereof) from
++ * the apps directory (application code) you must include an acknowledgement:
++ * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
++ *
++ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ *
++ * The licence and distribution terms for any publically available version or
++ * derivative of this code cannot be changed. i.e. this code cannot simply be
++ * copied and put under another distribution licence
++ * [including the GNU Public Licence.]
++ */
++ .
++ .
++ ISC license used for completely new code in BoringSSL:
++ .
++ /* Copyright (c) 2015, Google Inc.
++ *
++ * Permission to use, copy, modify, and/or distribute this software for any
++ * purpose with or without fee is hereby granted, provided that the above
++ * copyright notice and this permission notice appear in all copies.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
++ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
++ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
++ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
++ .
++ .
++ The code in third_party/fiat carries the MIT license:
++ .
++ Copyright (c) 2015-2016 the fiat-crypto authors (see
++ https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS).
++ .
++ Permission is hereby granted, free of charge, to any person obtaining a copy
++ of this software and associated documentation files (the "Software"), to deal
++ in the Software without restriction, including without limitation the rights
++ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
++ copies of the Software, and to permit persons to whom the Software is
++ furnished to do so, subject to the following conditions:
++ .
++ The above copyright notice and this permission notice shall be included in all
++ copies or substantial portions of the Software.
++ .
++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
++ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
++ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
++ SOFTWARE.
--- /dev/null
--- /dev/null
++overlay = "."
++uploaders = ["kpcyrd <git@rxv.cc>"]
++whitelist = ["crypto/**/*.c", "third_party/**/*.c"]
++collapse_features = true
--- /dev/null
--- /dev/null
++--- a/build.rs
+++++ b/build.rs
++@@ -248,6 +248,9 @@
++ const MSVC_OBJ_EXT: &str = "obj";
++
++ fn main() {
+++ println!("dh-cargo:deb-built-using=ring-core=0={}", std::env::var("CARGO_MANIFEST_DIR").unwrap());
+++ println!("dh-cargo:deb-built-using=ring-test=0={}", std::env::var("CARGO_MANIFEST_DIR").unwrap());
+++
++ if let Ok(package_name) = std::env::var("CARGO_PKG_NAME") {
++ if package_name == "ring" {
++ ring_build_rs_main();
--- /dev/null
--- /dev/null
++Index: ring/tests/ed25519_tests.rs
++===================================================================
++--- ring.orig/tests/ed25519_tests.rs
+++++ ring/tests/ed25519_tests.rs
++@@ -62,7 +62,7 @@ fn test_signature_ed25519() {
++ }
++
++ /// Test vectors from BoringSSL.
++-#[test]
+++/*#[test]
++ fn test_signature_ed25519_verify() {
++ test::run(
++ test_file!("ed25519_verify_tests.txt"),
++@@ -81,7 +81,7 @@ fn test_signature_ed25519_verify() {
++ Ok(())
++ },
++ );
++-}
+++}*/
++
++ fn test_signature_verification(
++ public_key: &[u8],
--- /dev/null
--- /dev/null
++Index: ring/src/aead/aes.rs
++===================================================================
++--- ring.orig/src/aead/aes.rs
+++++ ring/src/aead/aes.rs
++@@ -409,6 +409,7 @@ fn detect_implementation(cpu_features: c
++ }
++
++ #[cfg(test)]
+++#[cfg(feature = "alloc")]
++ mod tests {
++ use super::{super::BLOCK_LEN, *};
++ use crate::test;
++Index: ring/src/aead/chacha.rs
++===================================================================
++--- ring.orig/src/aead/chacha.rs
+++++ ring/src/aead/chacha.rs
++@@ -157,6 +157,7 @@ mod tests {
++ // This test exists largely as a canary for detecting if/when that type of
++ // problem spreads to other platforms.
++ #[test]
+++ #[cfg(feature = "alloc")]
++ pub fn chacha20_tests() {
++ test::run(test_file!("chacha_tests.txt"), |section, test_case| {
++ assert_eq!(section, "");
++Index: ring/src/aead/poly1305.rs
++===================================================================
++--- ring.orig/src/aead/poly1305.rs
+++++ ring/src/aead/poly1305.rs
++@@ -129,6 +129,7 @@ pub(super) fn sign(key: Key, input: &[u8
++ }
++
++ #[cfg(test)]
+++#[cfg(feature = "alloc")]
++ mod tests {
++ use super::*;
++ use crate::test;
++Index: ring/src/arithmetic/bigint.rs
++===================================================================
++--- ring.orig/src/arithmetic/bigint.rs
+++++ ring/src/arithmetic/bigint.rs
++@@ -1404,6 +1404,7 @@ mod tests {
++ unsafe impl PublicModulus for M {}
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_elem_exp_consttime() {
++ test::run(
++ test_file!("bigint_elem_exp_consttime_tests.txt"),
++@@ -1432,6 +1433,7 @@ mod tests {
++ // In the meantime, the function is tested indirectly via the RSA
++ // verification and signing tests.
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_elem_mul() {
++ test::run(
++ test_file!("bigint_elem_mul_tests.txt"),
++@@ -1455,6 +1457,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_elem_squared() {
++ test::run(
++ test_file!("bigint_elem_squared_tests.txt"),
++@@ -1476,6 +1479,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_elem_reduced() {
++ test::run(
++ test_file!("bigint_elem_reduced_tests.txt"),
++@@ -1502,6 +1506,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_elem_reduced_once() {
++ test::run(
++ test_file!("bigint_elem_reduced_once_tests.txt"),
++Index: ring/src/ec/suite_b/ecdsa/digest_scalar.rs
++===================================================================
++--- ring.orig/src/ec/suite_b/ecdsa/digest_scalar.rs
+++++ ring/src/ec/suite_b/ecdsa/digest_scalar.rs
++@@ -75,6 +75,7 @@ fn digest_scalar_(ops: &ScalarOps, diges
++ }
++
++ #[cfg(test)]
+++#[cfg(feature = "alloc")]
++ mod tests {
++ use super::digest_bytes_scalar;
++ use crate::{
++Index: ring/src/ec/suite_b/ecdsa/signing.rs
++===================================================================
++--- ring.orig/src/ec/suite_b/ecdsa/signing.rs
+++++ ring/src/ec/suite_b/ecdsa/signing.rs
++@@ -514,6 +514,7 @@ static EC_PUBLIC_KEY_P384_PKCS8_V1_TEMPL
++ };
++
++ #[cfg(test)]
+++#[cfg(feature = "alloc")]
++ mod tests {
++ use crate::{signature, test};
++
++Index: ring/src/ec/suite_b/ecdsa/verification.rs
++===================================================================
++--- ring.orig/src/ec/suite_b/ecdsa/verification.rs
+++++ ring/src/ec/suite_b/ecdsa/verification.rs
++@@ -285,7 +285,9 @@ pub static ECDSA_P384_SHA384_ASN1: Ecdsa
++ };
++
++ #[cfg(test)]
+++#[cfg(feature = "alloc")]
++ mod tests {
+++ extern crate alloc;
++ use super::*;
++ use crate::test;
++ use alloc::vec::Vec;
++Index: ring/src/ec/suite_b/ops.rs
++===================================================================
++--- ring.orig/src/ec/suite_b/ops.rs
+++++ ring/src/ec/suite_b/ops.rs
++@@ -465,6 +465,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_elem_add_test() {
++ elem_add_test(
++ &p256::PUBLIC_SCALAR_OPS,
++@@ -473,6 +474,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_elem_add_test() {
++ elem_add_test(
++ &p384::PUBLIC_SCALAR_OPS,
++@@ -480,6 +482,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn elem_add_test(ops: &PublicScalarOps, test_file: test::File) {
++ test::run(test_file, |section, test_case| {
++ assert_eq!(section, "");
++@@ -505,6 +508,7 @@ mod tests {
++ // the point arithmetic functions. Thus, we can't test it.
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_elem_sub_test() {
++ extern "C" {
++ fn GFp_p384_elem_sub(r: *mut Limb, a: *const Limb, b: *const Limb);
++@@ -516,6 +520,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn elem_sub_test(
++ ops: &CommonOps,
++ elem_sub: unsafe extern "C" fn(r: *mut Limb, a: *const Limb, b: *const Limb),
++@@ -556,6 +561,7 @@ mod tests {
++ // into the point arithmetic functions. Thus, we can't test it.
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_elem_div_by_2_test() {
++ extern "C" {
++ fn GFp_p384_elem_div_by_2(r: *mut Limb, a: *const Limb);
++@@ -567,6 +573,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn elem_div_by_2_test(
++ ops: &CommonOps,
++ elem_div_by_2: unsafe extern "C" fn(r: *mut Limb, a: *const Limb),
++@@ -590,6 +597,7 @@ mod tests {
++
++ // TODO: Add test vectors that test the range of values above `q`.
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_elem_neg_test() {
++ extern "C" {
++ fn GFp_nistz256_neg(r: *mut Limb, a: *const Limb);
++@@ -602,6 +610,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_elem_neg_test() {
++ extern "C" {
++ fn GFp_p384_elem_neg(r: *mut Limb, a: *const Limb);
++@@ -613,6 +622,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn elem_neg_test(
++ ops: &CommonOps,
++ elem_neg: unsafe extern "C" fn(r: *mut Limb, a: *const Limb),
++@@ -647,15 +657,18 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_elem_mul_test() {
++ elem_mul_test(&p256::COMMON_OPS, test_file!("ops/p256_elem_mul_tests.txt"));
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_elem_mul_test() {
++ elem_mul_test(&p384::COMMON_OPS, test_file!("ops/p384_elem_mul_tests.txt"));
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn elem_mul_test(ops: &CommonOps, test_file: test::File) {
++ test::run(test_file, |section, test_case| {
++ assert_eq!(section, "");
++@@ -671,6 +684,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_scalar_mul_test() {
++ scalar_mul_test(
++ &p256::SCALAR_OPS,
++@@ -679,6 +693,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_scalar_mul_test() {
++ scalar_mul_test(
++ &p384::SCALAR_OPS,
++@@ -686,6 +701,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn scalar_mul_test(ops: &ScalarOps, test_file: test::File) {
++ test::run(test_file, |section, test_case| {
++ assert_eq!(section, "");
++@@ -701,6 +717,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_scalar_square_test() {
++ extern "C" {
++ fn GFp_p256_scalar_sqr_rep_mont(r: *mut Limb, a: *const Limb, rep: Limb);
++@@ -715,6 +732,7 @@ mod tests {
++ // XXX: There's no `p384_scalar_square_test()` because there's no dedicated
++ // `GFp_p384_scalar_sqr_rep_mont()`.
++
+++ #[cfg(feature = "alloc")]
++ fn scalar_square_test(
++ ops: &ScalarOps,
++ sqr_rep: unsafe extern "C" fn(r: *mut Limb, a: *const Limb, rep: Limb),
++@@ -760,6 +778,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_point_sum_test() {
++ point_sum_test(
++ &p256::PRIVATE_KEY_OPS,
++@@ -768,6 +787,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_point_sum_test() {
++ point_sum_test(
++ &p384::PRIVATE_KEY_OPS,
++@@ -775,6 +795,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn point_sum_test(ops: &PrivateKeyOps, test_file: test::File) {
++ test::run(test_file, |section, test_case| {
++ assert_eq!(section, "");
++@@ -795,6 +816,7 @@ mod tests {
++ // multiplication to use.
++ #[cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))]
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_point_sum_mixed_test() {
++ extern "C" {
++ fn GFp_nistz256_point_add_affine(
++@@ -813,6 +835,7 @@ mod tests {
++ // XXX: There is no `GFp_nistz384_point_add_affine()`.
++
++ #[cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))]
+++ #[cfg(feature = "alloc")]
++ fn point_sum_mixed_test(
++ ops: &PrivateKeyOps,
++ point_add_affine: unsafe extern "C" fn(
++@@ -841,6 +864,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_point_double_test() {
++ extern "C" {
++ fn GFp_nistz256_point_double(
++@@ -856,6 +880,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_point_double_test() {
++ extern "C" {
++ fn GFp_nistz384_point_double(
++@@ -870,6 +895,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn point_double_test(
++ ops: &PrivateKeyOps,
++ point_double: unsafe extern "C" fn(
++@@ -896,6 +922,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_point_mul_test() {
++ point_mul_tests(
++ &p256::PRIVATE_KEY_OPS,
++@@ -904,6 +931,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_point_mul_test() {
++ point_mul_tests(
++ &p384::PRIVATE_KEY_OPS,
++@@ -911,6 +939,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn point_mul_tests(ops: &PrivateKeyOps, test_file: test::File) {
++ test::run(test_file, |section, test_case| {
++ assert_eq!(section, "");
++@@ -929,6 +958,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_point_mul_serialized_test() {
++ point_mul_serialized_test(
++ &p256::PRIVATE_KEY_OPS,
++@@ -937,6 +967,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn point_mul_serialized_test(
++ priv_ops: &PrivateKeyOps,
++ pub_ops: &PublicKeyOps,
++@@ -978,6 +1009,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p256_point_mul_base_test() {
++ point_mul_base_tests(
++ &p256::PRIVATE_KEY_OPS,
++@@ -986,6 +1018,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn p384_point_mul_base_test() {
++ point_mul_base_tests(
++ &p384::PRIVATE_KEY_OPS,
++@@ -993,6 +1026,7 @@ mod tests {
++ );
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn point_mul_base_tests(ops: &PrivateKeyOps, test_file: test::File) {
++ test::run(test_file, |section, test_case| {
++ assert_eq!(section, "");
++@@ -1033,6 +1067,7 @@ mod tests {
++ }
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn consume_jacobian_point(
++ ops: &PrivateKeyOps,
++ test_case: &mut test::TestCase,
++@@ -1054,6 +1089,7 @@ mod tests {
++ }
++
++ #[cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))]
+++ #[cfg(feature = "alloc")]
++ fn consume_affine_point(
++ ops: &PrivateKeyOps,
++ test_case: &mut test::TestCase,
++@@ -1070,6 +1106,7 @@ mod tests {
++ p
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn consume_point_elem(ops: &CommonOps, limbs_out: &mut [Limb], elems: &[&str], i: usize) {
++ let bytes = test::from_hex(elems[i]).unwrap();
++ let bytes = untrusted::Input::from(&bytes);
++@@ -1084,6 +1121,7 @@ mod tests {
++ Affine(Elem<R>, Elem<R>),
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn consume_point(ops: &PrivateKeyOps, test_case: &mut test::TestCase, name: &str) -> TestPoint {
++ fn consume_point_elem(ops: &CommonOps, elems: &[&str], i: usize) -> Elem<R> {
++ let bytes = test::from_hex(elems[i]).unwrap();
++@@ -1130,6 +1168,7 @@ mod tests {
++ }
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn consume_elem(ops: &CommonOps, test_case: &mut test::TestCase, name: &str) -> Elem<R> {
++ let bytes = consume_padded_bytes(ops, test_case, name);
++ let bytes = untrusted::Input::from(&bytes);
++@@ -1142,12 +1181,14 @@ mod tests {
++ }
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn consume_scalar(ops: &CommonOps, test_case: &mut test::TestCase, name: &str) -> Scalar {
++ let bytes = test_case.consume_bytes(name);
++ let bytes = untrusted::Input::from(&bytes);
++ scalar_parse_big_endian_variable(ops, AllowZero::Yes, bytes).unwrap()
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn consume_scalar_mont(
++ ops: &CommonOps,
++ test_case: &mut test::TestCase,
++@@ -1164,6 +1205,7 @@ mod tests {
++ }
++ }
++
+++ #[cfg(feature = "alloc")]
++ fn consume_padded_bytes(
++ ops: &CommonOps,
++ test_case: &mut test::TestCase,
++Index: ring/src/ec/suite_b/public_key.rs
++===================================================================
++--- ring.orig/src/ec/suite_b/public_key.rs
+++++ ring/src/ec/suite_b/public_key.rs
++@@ -70,6 +70,7 @@ mod tests {
++ use crate::test;
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn parse_uncompressed_point_test() {
++ test::run(
++ test_file!("suite_b_public_key_tests.txt"),
++Index: ring/src/rsa/padding.rs
++===================================================================
++--- ring.orig/src/rsa/padding.rs
+++++ ring/src/rsa/padding.rs
++@@ -523,6 +523,7 @@ mod test {
++ use alloc::vec;
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_pss_padding_verify() {
++ test::run(
++ test_file!("rsa_pss_padding_tests.txt"),
++Index: ring/tests/aead_tests.rs
++===================================================================
++--- ring.orig/tests/aead_tests.rs
+++++ ring/tests/aead_tests.rs
++@@ -21,10 +21,14 @@ use wasm_bindgen_test::{wasm_bindgen_tes
++ wasm_bindgen_test_configure!(run_in_browser);
++
++ use core::ops::RangeFrom;
++-use ring::{aead, error, test, test_file};
+++use ring::{aead, error, test};
+++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
++
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++#[cfg(feature = "alloc")]
++ fn aead_aes_gcm_128() {
++ test_aead(
++ &aead::AES_128_GCM,
++@@ -42,6 +46,7 @@ fn aead_aes_gcm_128() {
++
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++#[cfg(feature = "alloc")]
++ fn aead_aes_gcm_256() {
++ test_aead(
++ &aead::AES_256_GCM,
++@@ -64,6 +69,7 @@ fn aead_aes_gcm_256() {
++ target_arch = "x86"
++ ))]
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn aead_chacha20_poly1305() {
++ test_aead(
++ &aead::CHACHA20_POLY1305,
++@@ -79,6 +85,7 @@ fn aead_chacha20_poly1305() {
++ );
++ }
++
+++#[cfg(feature = "alloc")]
++ fn test_aead<Seal, Open>(
++ aead_alg: &'static aead::Algorithm,
++ seal: Seal,
++@@ -335,6 +342,7 @@ fn test_aead_nonce_sizes() -> Result<(),
++ ))]
++ #[allow(clippy::range_plus_one)]
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn aead_chacha20_poly1305_openssh() {
++ // TODO: test_aead_key_sizes(...);
++
++Index: ring/tests/agreement_tests.rs
++===================================================================
++--- ring.orig/tests/agreement_tests.rs
+++++ ring/tests/agreement_tests.rs
++@@ -14,7 +14,10 @@
++
++ extern crate alloc;
++
++-use ring::{agreement, error, rand, test, test_file};
+++use ring::{agreement, error, rand, test};
+++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
++
++ #[test]
++ fn agreement_traits() {
++@@ -60,6 +63,7 @@ fn agreement_traits() {
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn agreement_agree_ephemeral() {
++ let rng = rand::SystemRandom::new();
++
++@@ -120,6 +124,7 @@ fn agreement_agree_ephemeral() {
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn test_agreement_ecdh_x25519_rfc_iterated() {
++ let mut k = h("0900000000000000000000000000000000000000000000000000000000000000");
++ let mut u = k.clone();
++@@ -187,6 +192,7 @@ fn x25519_(private_key: &[u8], public_ke
++ )
++ }
++
+++#[cfg(feature = "alloc")]
++ fn h(s: &str) -> Vec<u8> {
++ match test::from_hex(s) {
++ Ok(v) => v,
++Index: ring/tests/digest_tests.rs
++===================================================================
++--- ring.orig/tests/digest_tests.rs
+++++ ring/tests/digest_tests.rs
++@@ -12,7 +12,10 @@
++ // OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ // CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++
++-use ring::{digest, test, test_file};
+++use ring::{digest, test};
+++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
++
++ #[cfg(target_arch = "wasm32")]
++ use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure};
++@@ -23,6 +26,7 @@ wasm_bindgen_test_configure!(run_in_brow
++ /// Test vectors from BoringSSL, Go, and other sources.
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++#[cfg(feature = "alloc")]
++ fn digest_misc() {
++ test::run(test_file!("digest_tests.txt"), |section, test_case| {
++ assert_eq!(section, "");
++@@ -47,6 +51,7 @@ fn digest_misc() {
++ });
++ }
++
+++#[cfg(feature = "alloc")]
++ mod digest_shavs {
++ use ring::{digest, test};
++
++@@ -85,6 +90,7 @@ mod digest_shavs {
++
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++ #[cfg(feature = "alloc")]
++ fn short_msg_known_answer_test() {
++ run_known_answer_test(
++ &digest::$algorithm_name,
++@@ -98,6 +104,7 @@ mod digest_shavs {
++
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++ #[cfg(feature = "alloc")]
++ fn long_msg_known_answer_test() {
++ run_known_answer_test(
++ &digest::$algorithm_name,
++@@ -111,6 +118,7 @@ mod digest_shavs {
++
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++ #[cfg(feature = "alloc")]
++ fn monte_carlo_test() {
++ run_monte_carlo_test(
++ &digest::$algorithm_name,
++Index: ring/tests/ecdsa_tests.rs
++===================================================================
++--- ring.orig/tests/ecdsa_tests.rs
+++++ ring/tests/ecdsa_tests.rs
++@@ -15,12 +15,16 @@
++ use ring::{
++ rand,
++ signature::{self, KeyPair},
++- test, test_file,
+++ test,
++ };
++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
+++
++ // ECDSA *signing* tests are in src/ec/ecdsa/signing.rs.
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn ecdsa_from_pkcs8_test() {
++ test::run(
++ test_file!("ecdsa_from_pkcs8_tests.txt"),
++@@ -109,6 +113,7 @@ fn ecdsa_generate_pkcs8_test() {
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn signature_ecdsa_verify_asn1_test() {
++ test::run(
++ test_file!("ecdsa_verify_asn1_tests.txt"),
++@@ -142,6 +147,7 @@ fn signature_ecdsa_verify_asn1_test() {
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn signature_ecdsa_verify_fixed_test() {
++ test::run(
++ test_file!("ecdsa_verify_fixed_tests.txt"),
++@@ -211,6 +217,7 @@ fn ecdsa_test_public_key_coverage() {
++ // signature verifies correctly. The known-answer tests themselves are in
++ // ecsda/signing.rs.
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn signature_ecdsa_sign_fixed_sign_and_verify_test() {
++ let rng = rand::SystemRandom::new();
++
++@@ -265,6 +272,7 @@ fn signature_ecdsa_sign_fixed_sign_and_v
++ // signature verifies correctly. The known-answer tests themselves are in
++ // ecsda/signing.rs.
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn signature_ecdsa_sign_asn1_test() {
++ let rng = rand::SystemRandom::new();
++
++Index: ring/tests/ed25519_tests.rs
++===================================================================
++--- ring.orig/tests/ed25519_tests.rs
+++++ ring/tests/ed25519_tests.rs
++@@ -15,11 +15,15 @@
++ use ring::{
++ error,
++ signature::{self, Ed25519KeyPair, KeyPair},
++- test, test_file,
+++ test,
++ };
++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
+++
++ /// Test vectors from BoringSSL.
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn test_signature_ed25519() {
++ test::run(test_file!("ed25519_tests.txt"), |section, test_case| {
++ assert_eq!(section, "");
++@@ -113,6 +117,7 @@ fn test_ed25519_from_seed_and_public_key
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn test_ed25519_from_pkcs8_unchecked() {
++ // Just test that we can parse the input.
++ test::run(
++@@ -135,6 +140,7 @@ fn test_ed25519_from_pkcs8_unchecked() {
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn test_ed25519_from_pkcs8() {
++ // Just test that we can parse the input.
++ test::run(
++Index: ring/tests/hmac_tests.rs
++===================================================================
++--- ring.orig/tests/hmac_tests.rs
+++++ ring/tests/hmac_tests.rs
++@@ -12,7 +12,10 @@
++ // OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ // CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++
++-use ring::{digest, error, hmac, test, test_file};
+++use ring::{digest, error, hmac, test};
+++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
++
++ #[cfg(target_arch = "wasm32")]
++ use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure};
++@@ -22,6 +25,7 @@ wasm_bindgen_test_configure!(run_in_brow
++
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++#[cfg(feature = "alloc")]
++ fn hmac_tests() {
++ test::run(test_file!("hmac_tests.txt"), |section, test_case| {
++ assert_eq!(section, "");
++Index: ring/tests/pbkdf2_tests.rs
++===================================================================
++--- ring.orig/tests/pbkdf2_tests.rs
+++++ ring/tests/pbkdf2_tests.rs
++@@ -13,7 +13,10 @@
++ // CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++
++ use core::num::NonZeroU32;
++-use ring::{digest, error, pbkdf2, test, test_file};
+++use ring::{digest, error, pbkdf2, test};
+++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
++
++ #[cfg(target_arch = "wasm32")]
++ use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure};
++@@ -24,6 +27,7 @@ wasm_bindgen_test_configure!(run_in_brow
++ /// Test vectors from BoringSSL, Go, and other sources.
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++#[cfg(feature = "alloc")]
++ pub fn pbkdf2_tests() {
++ test::run(test_file!("pbkdf2_tests.txt"), |section, test_case| {
++ assert_eq!(section, "");
++Index: ring/tests/quic_tests.rs
++===================================================================
++--- ring.orig/tests/quic_tests.rs
+++++ ring/tests/quic_tests.rs
++@@ -12,23 +12,30 @@
++ // OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ // CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++
++-use ring::{aead::quic, test, test_file};
+++use ring::{aead::quic, test};
+++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn quic_aes_128() {
++ test_quic(&quic::AES_128, test_file!("quic_aes_128_tests.txt"));
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn quic_aes_256() {
++ test_quic(&quic::AES_256, test_file!("quic_aes_256_tests.txt"));
++ }
++
++ #[test]
+++#[cfg(feature = "alloc")]
++ fn quic_chacha20() {
++ test_quic(&quic::CHACHA20, test_file!("quic_chacha20_tests.txt"));
++ }
++
+++#[cfg(feature = "alloc")]
++ fn test_quic(alg: &'static quic::Algorithm, test_file: test::File) {
++ test_sample_len(alg);
++
++Index: ring/src/lib.rs
++===================================================================
++--- ring.orig/src/lib.rs
+++++ ring/src/lib.rs
++@@ -73,7 +73,7 @@
++ #![forbid(unused_results)]
++ #![no_std]
++
++-#[cfg(feature = "alloc")]
+++#[cfg(any(feature = "alloc",test))]
++ extern crate alloc;
++
++ #[macro_use]
++Index: ring/src/limb.rs
++===================================================================
++--- ring.orig/src/limb.rs
+++++ ring/src/limb.rs
++@@ -353,6 +353,7 @@ mod tests {
++ const MAX: Limb = LimbMask::True as Limb;
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_limbs_are_even() {
++ static EVENS: &[&[Limb]] = &[
++ &[],
++@@ -416,6 +417,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_limbs_equal_limb() {
++ for zero in ZEROES {
++ assert_eq!(limbs_equal_limb_constant_time(zero, 0), LimbMask::True);
++@@ -579,6 +581,7 @@ mod tests {
++ }
++
++ #[test]
+++ #[cfg(feature = "alloc")]
++ fn test_limbs_minimal_bits() {
++ const ALL_ONES: Limb = LimbMask::True as Limb;
++ static CASES: &[(&[Limb], usize)] = &[
++Index: ring/src/test.rs
++===================================================================
++--- ring.orig/src/test.rs
+++++ ring/src/test.rs
++@@ -541,6 +541,7 @@ pub mod rand {
++ }
++
++ #[cfg(test)]
+++#[cfg(feature = "alloc")]
++ mod tests {
++ use crate::{error, test};
++
++Index: ring/tests/hkdf_tests.rs
++===================================================================
++--- ring.orig/tests/hkdf_tests.rs
+++++ ring/tests/hkdf_tests.rs
++@@ -12,7 +12,10 @@
++ // OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
++ // CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++
++-use ring::{digest, error, hkdf, test, test_file};
+++use ring::{digest, error, hkdf, test};
+++
+++#[cfg(feature = "alloc")]
+++use ring::test_file;
++
++ #[cfg(target_arch = "wasm32")]
++ use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure};
++@@ -22,6 +25,7 @@ wasm_bindgen_test_configure!(run_in_brow
++
++ #[test]
++ #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)]
+++#[cfg(feature = "alloc")]
++ fn hkdf_tests() {
++ test::run(test_file!("hkdf_tests.txt"), |section, test_case| {
++ assert_eq!(section, "");
--- /dev/null
--- /dev/null
++Index: ring/Cargo.toml
++===================================================================
++--- ring.orig/Cargo.toml
+++++ ring/Cargo.toml
++@@ -83,9 +83,6 @@ default-features = false
++ [target."cfg(any(unix, windows))".dev-dependencies.libc]
++ version = "0.2.80"
++ default-features = false
++-[target."cfg(target_arch = \"wasm32\")".dev-dependencies.wasm-bindgen-test]
++-version = "0.3.18"
++-default-features = false
++ [target."cfg(target_os = \"windows\")".dependencies.winapi]
++ version = "0.3.8"
++ features = ["ntsecapi", "wtypesbase"]
--- /dev/null
--- /dev/null
++built-using.patch
++no-wasm-bindgen-test.patch
++disable-tests-missing-testdata.patch
++fix-tests-no-default-features.patch
++update-spin-to-0.9.patch
--- /dev/null
--- /dev/null
++diff --git a/Cargo.toml b/Cargo.toml
++index 812fce1..2e61cdf 100644
++--- a/Cargo.toml
+++++ b/Cargo.toml
++@@ -65,7 +65,8 @@ version = "0.3.37"
++ features = ["Crypto", "Window"]
++ default-features = false
++ [target."cfg(any(target_arch = \"x86\",target_arch = \"x86_64\", all(any(target_arch = \"aarch64\", target_arch = \"arm\"), any(target_os = \"android\", target_os = \"fuchsia\", target_os = \"linux\"))))".dependencies.spin]
++-version = "0.5.2"
+++version = "0.9"
+++features = ["once"]
++ default-features = false
++ [target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.libc]
++ version = "0.2.69"
--- /dev/null
--- /dev/null
++#!/usr/bin/make -f
++%:
++ dh $@ --buildsystem cargo
--- /dev/null
--- /dev/null
++3.0 (quilt)
--- /dev/null
--- /dev/null
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --all-features
++Features: test-name=rust-ring:@
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features alloc
++Features: test-name=librust-ring-dev:alloc
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets
++Features: test-name=librust-ring-dev:default
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features dev_urandom_fallback
++Features: test-name=librust-ring-dev:dev_urandom_fallback
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features internal_benches
++Features: test-name=librust-ring-dev:internal_benches
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features once_cell
++Features: test-name=librust-ring-dev:once_cell
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features slow_tests
++Features: test-name=librust-ring-dev:slow_tests
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features std
++Features: test-name=librust-ring-dev:std
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features test_logging
++Features: test-name=librust-ring-dev:test_logging
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features --features wasm32_c
++Features: test-name=librust-ring-dev:wasm32_c
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
++
++Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.16.20 --all-targets --no-default-features
++Features: test-name=librust-ring-dev:
++Depends: dh-cargo (>= 18), librust-libc-0.2-dev (>= 0.2.80-~~), @
++Restrictions: allow-stderr, skip-not-installable
--- /dev/null
--- /dev/null
++version=4
++opts=filenamemangle=s/.*\/(.*)\/download/ring-$1\.tar\.gz/g,\
++uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha)\d*)$/$1~$2/ \
++https://qa.debian.org/cgi-bin/fakeupstream.cgi?upstream=crates.io/ring .*/crates/ring/@ANY_VERSION@/download